1. Technical Field
This disclosure relates to semiconductor wafers and more particularly, to a method of detecting and classifying scratches occurring during wafer processing and can also be applied to any image detection or recognition problem dealing with elongated patterns.
2. Description of the Related Art
Semiconductor wafers, such as those made of silicon, are used as a substrate for processing integrated circuits chips. Scratches routinely result from the manufacture process, for example, as the result of contact printing, a lithography process, where a mask comes in contact with the wafer for purposes of building circuits. To classify the wafers in the past, manual inspection by an engineer was necessary. Manual inspection is so time consuming that inspection of each wafer is economically impossible.
During wafer processing, defect inspection techniques and electrical tests identify certain fail signatures that indicate the presence of a scratch. The results of these inspection techniques can include, for example, detailed wafer maps or bit fail maps. In a manufacturing environment that processes thousands of wafers per week it is not practical to manually classify every wafer for reasons of time and efficiency.
Therefore a need exists for an efficient method of detecting and classifying scratches occurring during wafer processing in the semiconductor industry.
The method for detecting and classifying a scratch on a semiconductor wafer, in accordance with the invention, first defines a coordinate system on the wafer. The method creates a list of failed cells according to coordinates corresponding to the cell failures on the wafer. The number of failed cells, in total, is determined. Through calculating the standard deviation of the failed cells at a plurality of different angles, based on the list of failed cells and the total number of failed cells, a determination is made as to whether the wafer has a potential scratch. Plotting the standard deviations versus the number of failed cells and comparing that point to other known points determines the presence of a scratch. The steps of detecting and classifying scratches occurring on wafers may be performed by a computer.
In other methods, the step of defining a coordinate system on the wafer may include the steps of assigning chips on the wafer a number of cells in the x and y directions and defining the coordinate system based on the cells and a number of chips. The step of creating a list of failed cells, may include the steps of assigning failed cells a value, creating the list of failed cells based on the cells assigned the value, and creating the list of failed cells according to locations on the coordinate system. The step of determining a standard deviation of the failed cells at a plurality of different angles, may include the steps of calculating the standard deviation for the plurality of different angles from a given position, determining the ratio of a lowest standard deviation to a highest standard deviation of the calculated standard deviations, graphing the ratio of standard deviations versus the total number of failed cells, and comparing a graphed point to points stored in a database to determine if a scratch exists. The step of determining a standard deviation of the failed cells at a plurality of different angles, may include the steps of calculating the ratio of a lowest standard deviation to a highest standard deviation from a plot of standard deviations, and comparing the ratio of standard deviations and number of failed cells against a range of values to determine if a scratch exists on the wafer. The step of comparing a ratio of standard deviations to the number of failed cells to determine the presence of a scratch, may include plotting the ratio of a lowest standard deviation to a highest standard deviation versus the number of failed cells, determining a position in the plot for the ratio and the number of failed cells, and comparing the position to other known positions from prior tests of wafers to determine if a scratch exists.
The step of calculating the standard deviation for the plurality of different angles from a given position, may include the steps of rotating the list of failed cells by a user defined angle, transforming the list of failed cells through coordinate transformation, calculating the standard deviation at each angle relative to the given position, and creating a schedule of standard deviations at the different angles.
A method for detecting and classifying scratches occurring during semiconductor wafer processing may include the steps of defining a total number of cells of a predefined size in an x and y direction, for chips on a wafer, calculating a total number of cells on the wafer, and developing a normalized coordinate system that assigns values between zero and one for each x and y coordinate, assigning failed cells a value, creating a schedule of a location of failed cells in the coordinate system, defining a number of failed cells, having the assigned value from the schedule of failed cells, calculating a standard deviation at different angles to a given line by rotating the positions of the failed cells by a user defined angle, transforming a coordinate list through coordinate transformation, creating a schedule of standard deviations at the different angles, determining a lowest standard deviation and a highest standard deviation from the schedule, calculating a ratio of the lowest standard deviation to the highest standard deviation for the wafer from the schedule, and determining the presence of a scratch by comparing the ratio and the number of failed cells against a range of values which are likely to denote a scratch on the wafer.
In other methods, the step of developing a normalized coordinate system that assigns values between zero and one for each x and y coordinate, may include the step of developing a system of cells that assigns values between zero and one for each x and y coordinate by dividing the value in the x or y direction by the total number of cells in the same x or y plane of the cell. The step of assigning failed cells a value, creating a schedule of the location of failed cells in the coordinate system, may include the step of assigning the failed cells the value of 1. The step of calculating a standard deviation several times, at different angles to a fixed position by rotating the coordinate list of failed cells by a user defined angle, may include the steps of rotating through coordinate transformation and determining the standard deviation at the new angle from the given line. The step of creating a schedule of standard deviations at the different angles may include the steps of plotting the standard deviation versus the angle of transformation and identifying the lowest standard deviation and the highest standard deviation from a graph of standard deviation versus the angle of transformation. The step of determining the presence of a scratch by comparing the ratio and the number of failed cells against a range of values which are likely to denote a scratch may include the step of plotting the ratio versus number of failed cells and comparing the plot to a database of stored points corresponding to scratches on a set of pervious wafers.
A method detecting and classifying an elongated pattern on an image may include defining a coordinate system for a digitally rendered image creating a list of positions on a pixel map relating to an object on the coordinate system, defining a total number of pixels relating to the object, determining a standard deviation of the pixels relating to the object at a plurality of different angles based on the list of pixel positions and the total number of pixels relating to the object, and comparing a ratio of standard deviations to the number of pixels relating to the object to determine the presence of the elongated pattern.
In other methods the step of determining a standard deviation of the failed cells at a plurality of different angles, may include the steps of calculating the standard deviation for the plurality of different angles from a given position, determining the ratio of a lowest standard deviation to a highest standard deviation of the calculated standard deviations, graphing the ratio of standard deviations versus the total number of pixels relating to the object, and comparing a graphed point to points stored in a database to determine if the elongated pattern exists. The means for determining a standard deviation at a plurality of different angles based on the list of pixel positions and the total number of pixels relating to the object, may include the steps of rotating the list of pixels by a user defined angle, transforming the list of pixels through coordinate transformation, calculating the standard deviation at each angle relative to the given position, and creating a schedule of standard deviations at the different angles. The means for determining a standard deviation at a plurality of different angles based on the list of pixels positions and the total number of pixels relating to the object, may include the steps of calculating the ratio of a lowest standard deviation to a highest standard deviation from a plot of standard deviations, and comparing the ratio of standard deviations and number of pixels relating to the object, against a range of values to determine if the elongated pattern exists on the wafer. The method may include the steps of comparing the ratio of standard deviations to the number of pixels relating to the object to determine the presence of the pattern, may include, plotting the ratio of a lowest standard deviation to a highest standard deviation versus the number of pixels relating to the object, determining a position in the plot for the ratio and the number of pixels relating to the object, and comparing the position to other known positions from prior tests of images to determine if the elongated pattern exists.